#ifndef RWMANAGER_H
#define RWMANAGER_H

#include <QStringList>
#include <QByteArray>

///文件每个文件的数据结构
typedef struct _FileStruct{
    QString _rootfile;     ///仓库目录文件
    QString _workfile;     ///工作目录文件
    QByteArray _hashcode;  ///文件hashcode
    bool     _same;        ///文件是否相同
}FileStruct,*PtrFileStruct;

///仓库文件和工作目录文件对比排序工具类
class RWManager
{
public:
    RWManager();

public:
    ///添加仓库目录文件
    int addRootFiles(QString filepath);
    ///添加工作目录文件
    int addWorkFiles(QString filepath);

    ///计算每个文件hashcode
    QByteArray calHash(QString filepath);

private:
    ///仓库文件
    QStringList _rootFiles;
    ///工作目录文件
    QStringList _workFiles;
};

#endif // RWMANAGER_H
